```html
<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>HashMap负载因子0.75的奥秘 | 技术小馆</title>
    <link rel="stylesheet" href="https://cdn.staticfile.org/font-awesome/6.4.0/css/all.min.css">
    <link rel="stylesheet" href="https://cdn.staticfile.org/tailwindcss/2.2.19/tailwind.min.css">
    <link href="https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@400;500;600;700&family=Noto+Sans+SC:wght@300;400;500;700&display=swap" rel="stylesheet">
    <script src="https://cdn.jsdelivr.net/npm/mermaid@latest/dist/mermaid.min.js"></script>
    <style>
        body {
            font-family: 'Noto Sans SC', Tahoma, Arial, Roboto, "Droid Sans", "Helvetica Neue", "Droid Sans Fallback", "Heiti SC", "Hiragino Sans GB", Simsun, sans-serif;
            color: #333;
            line-height: 1.6;
        }
        h1, h2, h3, h4 {
            font-family: 'Noto Serif SC', serif;
            font-weight: 600;
        }
        .hero {
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
        }
        .card {
            transition: transform 0.3s ease, box-shadow 0.3s ease;
        }
        .card:hover {
            transform: translateY(-5px);
            box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
        }
        .highlight {
            background: linear-gradient(120deg, #f6d365 0%, #fda085 100%);
            -webkit-background-clip: text;
            background-clip: text;
            color: transparent;
            font-weight: 700;
        }
        .first-letter {
            font-size: 3.5em;
            float: left;
            line-height: 0.8;
            margin-right: 8px;
            margin-top: 6px;
            color: #4f46e5;
        }
        .code-block {
            background-color: #2d3748;
            border-radius: 6px;
            position: relative;
        }
        .code-block pre {
            overflow-x: auto;
            padding: 1.25em 1.5em;
            color: #e2e8f0;
        }
        .code-block .language {
            position: absolute;
            right: 0;
            top: 0;
            background-color: #4f46e5;
            color: white;
            padding: 0.25em 0.75em;
            border-bottom-left-radius: 4px;
            font-size: 0.8em;
        }
    </style>
</head>
<body class="bg-gray-50">
    <!-- Hero Section -->
    <section class="hero text-white py-20 px-4 md:px-0">
        <div class="container mx-auto max-w-4xl text-center">
            <h1 class="text-4xl md:text-5xl font-bold mb-6">
                HashMap负载因子<span class="highlight">0.75</span>的奥秘
            </h1>
            <p class="text-xl md:text-2xl mb-8 max-w-3xl mx-auto">
                探索Java HashMap设计中负载因子的精妙权衡
            </p>
            <div class="flex justify-center space-x-4">
                <a href="#content" class="px-6 py-3 bg-white text-indigo-600 font-semibold rounded-full hover:bg-gray-100 transition duration-300">
                    <i class="fas fa-book-open mr-2"></i>开始阅读
                </a>
                <a href="http://www.yuque.com/jtostring" class="px-6 py-3 border border-white text-white font-semibold rounded-full hover:bg-white hover:text-indigo-600 transition duration-300">
                    <i class="fas fa-home mr-2"></i>技术小馆
                </a>
            </div>
        </div>
    </section>

    <!-- Main Content -->
    <main id="content" class="container mx-auto max-w-4xl px-4 py-12">
        <!-- Introduction -->
        <section class="mb-16">
            <div class="relative">
                <span class="first-letter">H</span>
                <h2 class="text-3xl font-bold mb-4 inline">HashMap负载因子0.75怎么来的</h2>
            </div>
            <p class="text-lg text-gray-700 mb-6">
                你们在日常编程中可能已经多次使用过 HashMap，但未必了解其底层工作原理。为什么 HashMap 的默认负载因子是 0.75？这个问题看似简单，但背后蕴藏着丰富的设计理念和权衡取舍。了解这个概念有助于我们更好地理解 HashMap 的性能和效率，甚至在实际项目中进行相关优化。
            </p>
            <div class="bg-white rounded-xl shadow-md overflow-hidden my-6">
                <img src="https://cdn.nlark.com/yuque/0/2024/png/21449790/1717163732248-f09e17f0-5a19-4ba6-adc0-d1ed2c718421.png" alt="HashMap结构示意图" class="w-full h-auto">
            </div>
            <p class="text-lg text-gray-700 mb-6">
                负载因子决定了哈希表在扩容之前可以填充的程度。具体来说，当哈希表中的条目数量达到负载因子与当前容量的乘积时，哈希表就会进行扩容。默认负载因子为 0.75 代表哈希表在达到 75% 的填充度时会进行扩容。这一选择不是随意的，它是经过精心计算和反复实验得出的结果，旨在平衡空间利用率和时间效率。
            </p>
        </section>

        <!-- Section 1 -->
        <section class="mb-16">
            <h2 class="text-3xl font-bold mb-6">负载因子在 HashMap中的作用和意义</h2>
            <p class="text-lg text-gray-700 mb-6">
                在 <code class="bg-gray-100 px-2 py-1 rounded">HashMap</code> 中，负载因子（Load Factor）是一个非常重要的参数，它在哈希表的性能和内存使用之间起着关键作用。
            </p>
            <div class="bg-white rounded-xl shadow-md overflow-hidden my-6">
                <img src="https://cdn.nlark.com/yuque/0/2024/png/21449790/1717163838132-b8d51612-9f39-46b0-a43c-cb7e9d6246d2.png" alt="负载因子作用示意图" class="w-full h-auto">
            </div>
            
            <div class="grid md:grid-cols-2 gap-6 mb-6">
                <div class="card bg-white p-6 rounded-xl shadow-md">
                    <div class="flex items-center mb-4">
                        <div class="bg-indigo-100 w-10 h-10 rounded-full flex items-center justify-center mr-4">
                            <i class="fas fa-expand text-indigo-600"></i>
                        </div>
                        <h3 class="text-xl font-semibold">控制扩容时机</h3>
                    </div>
                    <p class="text-gray-700">
                        负载因子决定了 <code>HashMap</code> 何时进行扩容。默认情况下，当元素数量达到当前容量的 75% 时，<code>HashMap</code> 会将容量扩大一倍。例如初始容量为16时，会在元素达到12个时扩容到32。
                    </p>
                </div>
                <div class="card bg-white p-6 rounded-xl shadow-md">
                    <div class="flex items-center mb-4">
                        <div class="bg-blue-100 w-10 h-10 rounded-full flex items-center justify-center mr-4">
                            <i class="fas fa-balance-scale text-blue-600"></i>
                        </div>
                        <h3 class="text-xl font-semibold">平衡效率与利用率</h3>
                    </div>
                    <p class="text-gray-700">
                        负载因子在时间效率和空间利用率之间找到一个平衡点。低负载因子减少冲突但增加内存开销，高负载因子节省内存但增加冲突概率。
                    </p>
                </div>
            </div>

            <div class="mb-8">
                <h3 class="text-2xl font-semibold mb-4">负载因子对性能的影响</h3>
                <div class="overflow-x-auto">
                    <table class="min-w-full bg-white rounded-lg overflow-hidden">
                        <thead class="bg-gray-100">
                            <tr>
                                <th class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">负载因子</th>
                                <th class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">优点</th>
                                <th class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">缺点</th>
                            </tr>
                        </thead>
                        <tbody class="divide-y divide-gray-200">
                            <tr>
                                <td class="px-6 py-4 whitespace-nowrap font-medium">低 (如0.5)</td>
                                <td class="px-6 py-4">减少哈希冲突，提高操作性能</td>
                                <td class="px-6 py-4">增加内存开销，更多空闲空间</td>
                            </tr>
                            <tr>
                                <td class="px-6 py-4 whitespace-nowrap font-medium">高 (如0.9)</td>
                                <td class="px-6 py-4">高效利用内存</td>
                                <td class="px-6 py-4">增加哈希冲突，性能可能下降</td>
                            </tr>
                        </tbody>
                    </table>
                </div>
            </div>

            <div class="grid md:grid-cols-2 gap-6">
                <div class="card bg-white p-6 rounded-xl shadow-md">
                    <div class="flex items-center mb-4">
                        <div class="bg-purple-100 w-10 h-10 rounded-full flex items-center justify-center mr-4">
                            <i class="fas fa-link text-purple-600"></i>
                        </div>
                        <h3 class="text-xl font-semibold">影响哈希冲突和链表长度</h3>
                    </div>
                    <p class="text-gray-700">
                        负载因子直接影响哈希冲突的频率和链表长度。低负载因子使链表较短，操作时间复杂度接近 O(1)；高负载因子使链表变长，可能退化到 O(n)。
                    </p>
                </div>
                <div class="card bg-white p-6 rounded-xl shadow-md">
                    <div class="flex items-center mb-4">
                        <div class="bg-green-100 w-10 h-10 rounded-full flex items-center justify-center mr-4">
                            <i class="fas fa-chart-line text-green-600"></i>
                        </div>
                        <h3 class="text-xl font-semibold">影响整体系统性能</h3>
                    </div>
                    <p class="text-gray-700">
                        在高并发环境中，负载因子设置过低会导致频繁扩容影响响应时间；设置过高可能增加锁竞争和哈希冲突，影响并发性能。
                    </p>
                </div>
            </div>
        </section>

        <!-- Section 2 -->
        <section class="mb-16">
            <h2 class="text-3xl font-bold mb-6">负载因子的定义</h2>
            <p class="text-lg text-gray-700 mb-6">
                负载因子（Load Factor）是用于衡量哈希表（如 Java 的 <code>HashMap</code>）已使用容量的一个度量标准。它决定了哈希表在什么时候需要扩容。
            </p>
            <div class="bg-white rounded-xl shadow-md overflow-hidden my-6">
                <img src="https://cdn.nlark.com/yuque/0/2024/png/21449790/1717163895853-b7bcb399-09bb-43d3-8946-66d41525e3bc.png" alt="负载因子定义示意图" class="w-full h-auto">
            </div>
            
            <div class="mb-8">
                <div class="grid md:grid-cols-2 gap-6 mb-8">
                    <div>
                        <h3 class="text-2xl font-semibold mb-4">计算公式</h3>
                        <div class="bg-white p-6 rounded-xl shadow-md">
                            <div class="text-center mb-4">
                                <img src="https://cdn.nlark.com/yuque/0/2024/png/21449790/1717162748717-9bf6ec67-40ae-4c38-9fc5-1bfd8afa8c03.png" alt="负载因子公式" class="max-w-full h-auto mx-auto">
                            </div>
                            <p class="text-gray-700">
                                其中 <strong>Number of Elements</strong> 是当前哈希表中的元素数量，<strong>Capacity</strong> 是哈希表的总桶数（即数组的长度）。
                            </p>
                        </div>
                    </div>
                    <div>
                        <h3 class="text-2xl font-semibold mb-4">默认值</h3>
                        <div class="bg-white p-6 rounded-xl shadow-md flex flex-col items-center justify-center h-full">
                            <div class="text-5xl font-bold text-indigo-600 mb-4">0.75</div>
                            <p class="text-gray-700 text-center">
                                在Java的<code>HashMap</code>中，默认负载因子值为0.75。这意味着当元素数量达到容量的75%时，哈希表就会扩容。
                            </p>
                        </div>
                    </div>
                </div>

                <h3 class="text-2xl font-semibold mb-4">扩容过程</h3>
                <div class="grid md:grid-cols-2 gap-6">
                    <div class="card bg-white p-6 rounded-xl shadow-md">
                        <div class="flex items-center mb-4">
                            <div class="bg-red-100 w-10 h-10 rounded-full flex items-center justify-center mr-4">
                                <i class="fas fa-redo text-red-600"></i>
                            </div>
                            <h4 class="text-lg font-semibold">重新计算哈希值</h4>
                        </div>
                        <p class="text-gray-700">
                            所有元素需要重新计算哈希值，以适应新的容量。
                        </p>
                    </div>
                    <div class="card bg-white p-6 rounded-xl shadow-md">
                        <div class="flex items-center mb-4">
                            <div class="bg-yellow-100 w-10 h-10 rounded-full flex items-center justify-center mr-4">
                                <i class="fas fa-random text-yellow-600"></i>
                            </div>
                            <h4 class="text-lg font-semibold">再分布元素</h4>
                        </div>
                        <p class="text-gray-700">
                            将元素重新分配到新的哈希表中，以减少冲突。
                        </p>
                    </div>
                </div>
            </div>
        </section>

        <!-- Section 3 -->
        <section class="mb-16">
            <h2 class="text-3xl font-bold mb-6">实际应用中的负载因子调整</h2>
            <p class="text-lg text-gray-700 mb-6">
                在实际应用中，<code>HashMap</code> 的默认负载因子 0.75 在大多数情况下能提供良好的性能和效率。然而，特定的应用场景可能需要调整负载因子以满足不同的性能要求。
            </p>
            
            <div class="mb-8">
                <h3 class="text-2xl font-semibold mb-4">调整负载因子的方法</h3>
                <div class="code-block mb-6">
                    <span class="language">Java</span>
                    <pre><code>// 创建一个初始容量为16，负载因子为0.5的HashMap
HashMap&lt;String, Integer&gt; map = new HashMap&lt;&gt;(16, 0.5f);</code></pre>
                </div>
                <p class="text-gray-700 mb-6">
                    在这个例子中，我们设置了一个较低的负载因子 0.5，这意味着当 <code>HashMap</code> 中的元素数量达到其容量的 50% 时，<code>HashMap</code> 将进行扩容。
                </p>
            </div>

            <div class="mb-8">
                <h3 class="text-2xl font-semibold mb-4">负载因子的实际应用场景</h3>
                <div class="grid md:grid-cols-2 gap-6 mb-6">
                    <div class="card bg-white p-6 rounded-xl shadow-md">
                        <div class="flex items-center mb-4">
                            <div class="bg-green-100 w-10 h-10 rounded-full flex items-center justify-center mr-4">
                                <i class="fas fa-bolt text-green-600"></i>
                            </div>
                            <h4 class="text-xl font-semibold">高性能场景</h4>
                        </div>
                        <p class="text-gray-700 mb-4">
                            在实时数据处理系统等对性能要求极高的场景中，可以将负载因子设置为 0.5 或更低，以确保较低的冲突率。
                        </p>
                        <div class="code-block">
                            <span class="language">Java</span>
                            <pre><code>HashMap&lt;String, String&gt; highPerfMap = new HashMap&lt;&gt;(64, 0.5f);</code></pre>
                        </div>
                    </div>
                    <div class="card bg-white p-6 rounded-xl shadow-md">
                        <div class="flex items-center mb-4">
                            <div class="bg-blue-100 w-10 h-10 rounded-full flex items-center justify-center mr-4">
                                <i class="fas fa-memory text-blue-600"></i>
                            </div>
                            <h4 class="text-xl font-semibold">内存优化场景</h4>
                        </div>
                        <p class="text-gray-700 mb-4">
                            在嵌入式系统或移动设备等内存受限环境中，可以提高负载因子到 0.9，以减少扩容次数和内存占用。
                        </p>
                        <div class="code-block">
                            <span class="language">Java</span>
                            <pre><code>HashMap&lt;String, String&gt; memoryOptimizedMap = new HashMap&lt;&gt;(16, 0.9f);</code></pre>
                        </div>
                    </div>
                </div>
            </div>

            <div class="mb-8">
                <h3 class="text-2xl font-semibold mb-4">调整负载因子的注意事项</h3>
                <div class="grid md:grid-cols-3 gap-4">
                    <div class="bg-white p-4 rounded-lg shadow">
                        <div class="text-indigo-600 mb-2"><i class="fas fa-sync-alt"></i></div>
                        <h4 class="font-semibold mb-2">扩容的开销</h4>
                        <p class="text-sm text-gray-600">过低的负载因子会导致频繁扩容，影响性能</p>
                    </div>
                    <div class="bg-white p-4 rounded-lg shadow">
                        <div class="text-indigo-600 mb-2"><i class="fas fa-chart-bar"></i></div>
                        <h4 class="font-semibold mb-2">应用特性分析</h4>
                        <p class="text-sm text-gray-600">应根据应用特性动态调整负载因子</p>
                    </div>
                    <div class="bg-white p-4 rounded-lg shadow">
                        <div class="text-indigo-600 mb-2"><i class="fas fa-ruler-combined"></i></div>
                        <h4 class="font-semibold mb-2">预估元素数量</h4>
                        <p class="text-sm text-gray-600">设置合适的初始容量减少扩容次数</p>
                    </div>
                </div>
            </div>
        </section>

        <!-- Section 4 -->
        <section class="mb-16">
            <h2 class="text-3xl font-bold mb-6">空间利用率和时间效率的平衡</h2>
            <p class="text-lg text-gray-700 mb-6">
                在软件开发中，空间利用率和时间效率的平衡是一个关键问题，尤其是在使用诸如 <code>HashMap</code> 这样的数据结构时。<code>HashMap</code> 通过哈希表实现快速的查找、插入和删除操作，但其性能高度依赖于负载因子（Load Factor）。
            </p>
            
            <div class="mb-8">
                <h3 class="text-2xl font-semibold mb-6 text-center">负载因子的选择权衡</h3>
                <div class="flex flex-col md:flex-row justify-center items-stretch mb-8">
                    <div class="bg-white rounded-l-lg shadow-md p-6 md:w-1/2 border-r border-gray-200">
                        <div class="text-center mb-4">
                            <div class="bg-blue-100 inline-flex p-3 rounded-full mb-2">
                                <i class="fas fa-clock text-blue-600 text-2xl"></i>
                            </div>
                            <h4 class="text-xl font-semibold">低负载因子 (如0.5)</h4>
                        </div>
                        <ul class="space-y-2 text-gray-700">
                            <li class="flex items-start">
                                <i class="fas fa-check-circle text-green-500 mt-1 mr-2"></i>
                                <span>减少哈希冲突，提高操作性能</span>
                            </li>
                            <li class="flex items-start">
                                <i class="fas fa-check-circle text-green-500 mt-1 mr-2"></i>
                                <span>保证时间复杂度接近 O(1)</span>
                            </li>
                            <li class="flex items-start">
                                <i class="fas fa-times-circle text-red-500 mt-1 mr-2"></i>
                                <span>增加内存消耗和扩容频率</span>
                            </li>
                        </ul>
                    </div>
                    <div class="bg-white rounded-r-lg shadow-md p-6 md:w-1/2">
                        <div class="text-center mb-4">
                            <div class="bg-purple-100 inline-flex p-3 rounded-full mb-2">
                                <i class="fas fa-database text-purple-600 text-2xl"></i>
                            </div>
                            <h4 class="text-xl font-semibold">高负载因子 (如0.9)</h4>
                        </div>
                        <ul class="space-y-2 text-gray-700">
                            <li class="flex items-start">
                                <i class="fas fa-check-circle text-green-500 mt-1 mr-2"></i>
                                <span>提高空间利用率，减少内存浪费</span>
                            </li>
                            <li class="flex items-start">
                                <i class="fas fa-check-circle text-green-500 mt-1 mr-2"></i>
                                <span>延缓扩容，减少扩容开销</span>
                            </li>
                            <li class="flex items-start">
                                <i class="fas fa-times-circle text-red-500 mt-1 mr-2"></i>
                                <span>增加哈希冲突，性能可能下降</span>
                            </li>
                        </ul>
                    </div>
                </div>

                <h3 class="text-2xl font-semibold mb-4">平衡策略</h3>
                <div class="grid md:grid-cols-3 gap-6 mb-8">
                    <div class="card bg-white p-6 rounded-xl shadow-md">
                        <h4 class="text-lg font-semibold mb-3">根据应用需求调整</h4>
                        <p class="text-gray-700">
                            高性能需求选择低负载因子(0.5)，内存受限选择高负载因子(0.9)。
                        </p>
                    </div>
                    <div class="card bg-white p-6 rounded-xl shadow-md">
                        <h4 class="text-lg font-semibold mb-3">合理设置初始容量</h4>
                        <p class="text-gray-700">
                            根据预计元素数量设置初始容量，减少扩容频率。
                        </p>
                    </div>
                    <div class="card bg-white p-6 rounded-xl shadow-md">
                        <h4 class="text-lg font-semibold mb-3">动态调整</h4>
                        <p class="text-gray-700">
                            在高峰期降低负载因子，低峰期提高负载因子。
                        </p>
                    </div>
                </div>
            </div>

            <div class="mb-8">
                <h3 class="text-2xl font-semibold mb-4">实例分析</h3>
                <div class="bg-white rounded-xl shadow-md overflow-hidden">
                    <div class="grid md:grid-cols-2 divide-x divide-gray-200">
                        <div class="p-6">
                            <div class="flex items-center mb-4">
                                <div class="bg-pink-100 w-10 h-10 rounded-full flex items-center justify-center mr-4">
                                    <i class="fas fa-shopping-cart text-pink-600"></i>
                                </div>
                                <h4 class="text-xl font-semibold">购物车服务</h4>
                            </div>
                            <p class="text-gray-700 mb-4">
                                需要高效处理添加/移除商品操作，响应时间要求极高。
                            </p>
                            <div class="bg-green-50 p-4 rounded-lg">
                                <p class="text-green-700 font-medium">
                                    <i class="fas fa-lightbulb mr-2"></i>建议使用低负载因子(0.5)确保高性能
                                </p>
                            </div>
                        </div>
                        <div class="p-6">
                            <div class="flex items-center mb-4">
                                <div class="bg-teal-100 w-10 h-10 rounded-full flex items-center justify-center mr-4">
                                    <i class="fas fa-boxes text-teal-600"></i>
                                </div>
                                <h4 class="text-xl font-semibold">商品库存服务</h4>
                            </div>
                            <p class="text-gray-700 mb-4">
                                记录商品库存信息，变动较少，对内存使用要求高。
                            </p>
                            <div class="bg-blue-50 p-4 rounded-lg">
                                <p class="text-blue-700 font-medium">
                                    <i class="fas fa-lightbulb mr-2"></i>建议使用高负载因子(0.9)节省内存
                                </p>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </section>

        <!-- Visualization -->
        <section class="mb-16">
            <h2 class="text-3xl font-bold mb-6">负载因子与性能关系可视化</h2>
            <div class="bg-white p-6 rounded-xl shadow-md">
                <div class="mermaid">
                    graph LR
                    A[负载因子] --> B(空间利用率)
                    A --> C(时间效率)
                    B --> D[高负载因子 → 高利用率]
                    B --> E[低负载因子 → 低利用率]
                    C --> F[高负载因子 → 低效率]
                    C --> G[低负载因子 → 高效率]
                    D --> H[内存节省]
                    E --> I[内存浪费]
                    F --> J[哈希冲突增加]
                    G --> K[哈希冲突减少]
                </div>
            </div>
        </section>

        <!-- Conclusion -->
        <section class="bg-white rounded-xl shadow-md p-8 mb-16">
            <div class="text-center">
                <div class="bg-indigo-100 w-16 h-16 rounded-full flex items-center justify-center mx-auto mb-6">
                    <i class="fas fa-check-circle text-indigo-600 text-2xl"></i>
                </div>
                <h2 class="text-2xl font-bold mb-4">关键结论</h2>
                <p class="text-gray-700 max-w-2xl mx-auto mb-6">
                    HashMap的默认负载因子0.75是经过精心设计的折中值，在大多数场景下能在时间和空间效率之间取得良好平衡。理解这一设计理念有助于我们在特定应用场景中做出合理的调整决策。
                </p>
                <div class="flex flex-wrap justify-center gap-4">
                    <div class="bg-indigo-50 px-4 py-2 rounded-full flex items-center">
                        <i class="fas fa-balance-scale-left text-indigo-600 mr-2"></i>
                        <span>时间与空间的平衡</span>
                    </div>
                    <div class="bg-blue-50 px-4 py-2 rounded-full flex items-center">
                        <i class="fas fa-calculator text-blue-600 mr-2"></i>
                        <span>数学统计优化</span>
                    </div>
                    <div class="bg-purple-50 px-4 py-2 rounded-full flex items-center">
                        <i class="fas fa-flask text-purple-600 mr-2"></i>
                        <span>实验验证结果</span>
                    </div>
                </div>
            </div>
        </section>
    </main>

    <!-- Footer -->
    <footer class="bg-gray-900 text-gray-300 py-12 px-4">
        <div class="container mx-auto max-w-4xl text-center">
            <h3 class="text-xl font-semibold mb-4 text-white">技术小馆</h3>
            <p class="mb-6">探索编程技术的深度与广度</p>
            <div class="flex justify-center space-x-6 mb-6">
                <a href="http://www.yuque.com/jtostring" class="text-gray-400 hover:text-white transition duration-300">
                    <i class="fab fa-yuque text-2xl"></i>
                </a>
            </div>
            <p class="text-sm text-gray-500">
                &copy; 2023 技术小馆. 保留所有权利.
            </p>
            <a href="http://www.yuque.com/jtostring" class="text-indigo-400 hover:text-indigo-300 text-sm block mt-2 transition duration-300">
                http://www.yuque.com/jtostring
            </a>
        </div>
    </footer>

    <script>
        mermaid.initialize({
            startOnLoad: true,
            theme: 'default',
            flowchart: {
                useMaxWidth: true,
                htmlLabels: true,
                curve: 'basis'
            }
        });
    </script>
</body>
</html>
```